RROutput primary_output = None;
RROutput first_output = None;
int i;
- gboolean randr12_compat = FALSE;
XRRMonitorInfo *rr_monitors;
int num_rr_monitors;
int old_primary;
if (output_info == NULL)
continue;
- /* Non RandR1.2+ X driver have output name "default" */
- randr12_compat |= !g_strcmp0 (output_info->name, "default");
-
if (output_info->connection == RR_Disconnected)
{
XRRFreeOutputInfo (output_info);
XRRFreeMonitors (rr_monitors);
XRRFreeScreenResources (resources);
- /* non RandR 1.2+ X driver doesn't return any usable multihead data */
- if (randr12_compat)
- {
- for (i = 0; i < x11_display->monitors->len; i++)
- {
- GdkX11Monitor *monitor = x11_display->monitors->pdata[i];
- if (monitor->remove)
- gdk_display_monitor_removed (display, GDK_MONITOR (monitor));
- }
- g_ptr_array_remove_range (x11_display->monitors, 0, x11_display->monitors->len);
- return FALSE;
- }
-
for (i = x11_display->monitors->len - 1; i >= 0; i--)
{
GdkX11Monitor *monitor = x11_display->monitors->pdata[i];
RROutput primary_output = None;
RROutput first_output = None;
int i;
- gboolean randr12_compat = FALSE;
int old_primary;
if (!x11_display->have_randr13)
XRROutputInfo *output_info =
XRRGetOutputInfo (x11_screen->xdisplay, resources, output);
- /* Non RandR1.2+ X driver have output name "default" */
- randr12_compat |= !g_strcmp0 (output_info->name, "default");
-
if (output_info->connection == RR_Disconnected)
{
XRRFreeOutputInfo (output_info);
XRRFreeScreenResources (resources);
- if (randr12_compat)
- {
- for (i = 0; i < x11_display->monitors->len; i++)
- {
- GdkX11Monitor *monitor = x11_display->monitors->pdata[i];
- if (monitor->remove)
- gdk_display_monitor_removed (display, GDK_MONITOR (monitor));
- }
- g_ptr_array_remove_range (x11_display->monitors, 0, x11_display->monitors->len);
- return FALSE;
- }
+ /* Which usable multihead data is not returned in non RandR 1.2+ X driver? */
for (i = x11_display->monitors->len - 1; i >= 0; i--)
{
gdk_screen_get_height (screen));
g_object_notify (G_OBJECT (monitor), "workarea");
gdk_monitor_set_physical_size (GDK_MONITOR (monitor),
- gdk_screen_get_height_mm (screen),
+ gdk_screen_get_width_mm (screen),
gdk_screen_get_height_mm (screen));
gdk_monitor_set_scale_factor (GDK_MONITOR (monitor), x11_screen->window_scale);